clear all
use "./meatall.dta"

* udb: CIF value in ud (US Dollar) 
gen ud203 = exp(lnud203) 
gen ud20630 = exp(lnud20630) 
gen ud20649 = exp(lnud20649) 

* tariff levied
gen ud203t = ud203*(1 + tr203/100)
gen ud20630t = ud20630*(1 + tr20630/100) 
gen ud20649t = ud20649*(1 + tr20649/100)
gen trall = tr203 + tr20630 + tr20649

* Swine meat
egen uds = rowtotal(ud203 ud20630 ud20649)
egen udst = rowtotal(ud203t ud20630t ud20649t)
gen jyst = udst*xrjpy // jpy = usd*(jpy/usd)
gen lnxrjpy = ln(xrjpy)

*gen lnuds = ln(uds) // Log CIF value in USD
gen lnjyst = ln(jyst) // Log expenditure incl tariff in JPY
gen jys = uds*xrjpy // for ED 
gen st = jyst - jys // for ED  
egen isst = sum(st), by(year) // for ED

* kgb: CIF in kg (quantity) 
gen kg203 = exp(lnkg203)
gen kg20630 = exp(lnkg20630)
gen kg20649 = exp(lnkg20649)

* Bovine meat
egen kgs = rowtotal(kg203 kg20630 kg20649)
gen lnkgs = ln(kgs)

* Share Swine in JPY each year
egen isjyst = sum(jyst), by(year) // item sum
gen lnisjyst = ln(isjyst)
gen lnshs = lnjyst - lnisjyst // ln_share
egen isuds = sum(uds), by(year) // no tariff no jpy
gen lnisuds = ln(isuds) //no tariff no jpy
gen lnshs0 = ln(uds) - lnisuds // no tariff share

* generate uv (unit value)
gen lnuvs = lnjyst - lnkgs // ln_price

gen d095=1 if year==1995
replace d095=0 if d095==.
gen d096=1 if year==1996
replace d096=0 if d096==.
gen d097=1 if year==1997
replace d097=0 if d097==.
gen d098=1 if year==1998
replace d098=0 if d098==.
gen d099=1 if year==1999
replace d099=0 if d099==.
gen d100=1 if year==2000
replace d100=0 if d100==.
gen d101=1 if year==2001
replace d101=0 if d101==.
gen d102=1 if year==2002
replace d102=0 if d102==.
gen d103=1 if year==2003
replace d103=0 if d103==.
gen d104=1 if year==2004
replace d104=0 if d104==.
gen d105=1 if year==2005
replace d105=0 if d105==.
gen d106=1 if year==2006
replace d106=0 if d106==.
gen d107=1 if year==2007
replace d107=0 if d107==.
gen d108=1 if year==2008
replace d108=0 if d108==.
gen d109=1 if year==2009
replace d109=0 if d109==.
gen d110=1 if year==2010
replace d110=0 if d110==.
gen d111=1 if year==2011
replace d111=0 if d111==.
gen d112=1 if year==2012
replace d112=0 if d112==.
gen d113=1 if year==2013
replace d113=0 if d113==.
gen d114=1 if year==2014
replace d114=0 if d114==.
gen d115=1 if year==2015
replace d115=0 if d115==.
gen d116=1 if year==2016
replace d116=0 if d116==.
gen d117=1 if year==2017
replace d117=0 if d117==.
gen d118=1 if year==2018
replace d118=0 if d118==.

xtset c_code year

gen lnxrall = ln(xrall)

*** ESTIMATION ***
xtivreg2 lnshs d095-d118 (lnuvs = lnxrall L.xrall), fe endog(lnuvs)
xtreg lnshs d095-d118 lnuvs, fe
nlcom 1-_b[lnuvs]
nlcom (F2018:exp(-((0)+_b[d118])/_b[lnuvs]))(F2017:exp(-((0)+_b[d117])/_b[lnuvs]))(F2016:exp(-((0)+_b[d116])/_b[lnuvs]))(F2015:exp(-((0)+_b[d115])/_b[lnuvs]))(F2014:exp(-((0)+_b[d114])/_b[lnuvs]))(F2013:exp(-((0)+_b[d113])/_b[lnuvs]))(F2012:exp(-((0)+_b[d112])/_b[lnuvs]))(F2011:exp(-((0)+_b[d111])/_b[lnuvs]))(F2010:exp(-((0)+_b[d110])/_b[lnuvs]))(F2009:exp(-((0)+_b[d109])/_b[lnuvs]))(F2008:exp(-((0)+_b[d108])/_b[lnuvs]))(F2007:exp(-((0)+_b[d107])/_b[lnuvs]))(F2006:exp(-((0)+_b[d106])/_b[lnuvs]))(F2005:exp(-((0)+_b[d105])/_b[lnuvs]))(F2004:exp(-((0)+_b[d104])/_b[lnuvs]))(F2003:exp(-((0)+_b[d103])/_b[lnuvs]))(F2002:exp(-((0)+_b[d102])/_b[lnuvs]))(F2001:exp(-((0)+_b[d101])/_b[lnuvs]))(F2000:exp(-((0)+_b[d100])/_b[lnuvs]))(F1999:exp(-((0)+_b[d099])/_b[lnuvs]))(F1998:exp(-((0)+_b[d098])/_b[lnuvs]))(F1997:exp(-((0)+_b[d097])/_b[lnuvs]))(F1996:exp(-((0)+_b[d096])/_b[lnuvs]))(F1995:exp(-((0)+_b[d095])/_b[lnuvs]))(F1994:exp(-((0))/_b[lnuvs]))

* Feenstra Implicit *****************************************
gen delta1 = lnuvs - lnshs*(.0672216)
xtivreg2 lnshs d095-d118 (lnuvs = delta1), fe endog(lnuvs)
*************************************************************
